#include "glare.d3d11.DrawStateFactory.h"
#include "glare.d3d11.Driver.h"
#include "glare.d3d11.SamplerState.h"

namespace Glare {

	D3D11DrawStateFactory::D3D11DrawStateFactory(D3D11Driver* driver) 
		: _driver(driver)
	{
	}

	SamplerState* D3D11DrawStateFactory::CreateSamplerState(const SamplerStateDescription& sampler_description)
	{
		return new D3D11SamplerState(this, sampler_description);
	}

	void D3D11DrawStateFactory::DestroySamplerState(SamplerState* sampler_state)
	{
		delete sampler_state;
	}

	Driver* D3D11DrawStateFactory::GetDriver() const
	{
		return _driver;
	}

	D3D11Driver* D3D11DrawStateFactory::GetD3DDriver() const
	{
		return _driver;
	}
}
